// pages/prdList/prdList.js
Page({

    /**
     * 页面的初始数据
     */
    data: {
      
      total:0,
      rows:[],
      brands:[],
      //           '1' 表id
      brandSelect:{},//已选品牌
      brandVisible:false,
      
      query:{
          key:'',//搜索关键字
          pageNum:1,
          brandIds:'',
          pageSize:10,
          sorted:0
      }
    },
  //清空选中的品牌
  clearBrand(){
    this.setData({
      brandSelect:{}
    })
  },
  //按照品牌进行搜索
  confimBrand(){
    let brandIds = []
    for (let key in this.data.brandSelect) {//取出选中id
      // console.log(this.data.brandSelect[key])
       if( key && this.data.brandSelect[key]){
        // console.log(123,this.data.brandSelect[key])
          brandIds.push(key)
          // console.log(brandIds)
       }
    }
    // console.log(22,brandIds)
    this.data.query.brandIds = brandIds.join(',')
    this.refresh(()=>{
      // console.log('aaa')
       this.setData({
        brandVisible:false,
       })
    })
  }, 
  //显示品牌弹窗 -- 清除缓存
  brandChangeVisible(e){
    let brandSelect = {}
    if(!this.data.brandVisible && this.data.query.brandIds){//打开品牌弹框
      //按上次选择结果初始化选择品牌
       let brandIds = this.data.query.brandIds.split(',')
       for(let i =0; i<brandIds.length ; i++){
         brandSelect[brandIds[i]] = true
       }
    }
      this.setData({
          brandVisible:!this.data.brandVisible,
          brandSelect
      })
  },
  //缓存时显示弹窗 -- 选择品牌时不点确定下拉刷新会自动确定
//   brandChangeVisible(e){
//     this.setData({
//         brandVisible:!this.data.brandVisible
//     })
// },
 inputKey(e){
    this.data.query.key = e.detail.value
  },
  //切换品牌选中状态
  brandChange(e){ 
    let brandSelect =this.data.brandSelect
    let id = e.currentTarget.dataset.id
     brandSelect[id] = !brandSelect[id]
    this.setData({
      brandSelect
    })
  },
  ///3月21日 商品列表排序  30分左右 箭头没搞
  changeSorted(e){
      let sorted = e.currentTarget.dataset.sorted
      this.setData({
          'query.sorted':sorted
      })
      this.refresh()
  },
  refresh(next){
    this.data.query.pageNum = 1
    this.data.rows =[]
    this.data.total = 0
    this.getList(next)
  },

  detail:function(e){
    wx.navigateTo({
      url:'/pages/prdDetail/prDetail?productId=' +e.currentTarget.dataset.id,
    })
},

  return:function(e){
    wx.navigateBack({
      delta: 1,
    })
  },
    /**
     * 生命周期函数--监听页面加载
     */
    getBrands(){
      wx.$https.get('/brands').then((res)=>{
          this.setData({
              brands:res
          })
      })

    },

    onLoad: function (options) {
        console.log(options)
        this.setData({
            'query.key':options.key || '',
            'query.brandIds':options.brandIds || ''
        })
        this.getBrands()
        this.getList()
    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    getList(next){
       wx.$https.get('/products?pageNum=',this.data.query).then(res=>{
           res.rows.forEach((item,index)=>{
               item.img = item.productImgs.split(',')[0]
           })
            this.setData({
              rows:this.data.rows.concat(res.rows),
              total:res.total
            })
            if( typeof next == 'function') next()
       })
    },

    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {
      this.refresh(()=>{
          wx.stopPullDownRefresh()
      })
    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom() {
        //???????????靠为什么选用机型是iphoneX就上拉加载不了？？浪费时间啊
          if(this.data.rows.length < this.data.total)
          {
                this.data.query.pageNum++
                this.getList()
         }
      },
    // onReachBottom: function () {
          

    // },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    }
})